草庐IT

Rust 生命周期

全部标签

iphone - 类似于 RAII 的惯用短生命周期本地对象

我遇到了Objective-C的这个片段:NSNumber*theBalance=[[[NSNumberFormatteralloc]init]numberFromString:[textFieldtext]];这似乎泄露了NSNumberFormatter。在C++中,我会做以下两件事之一:为NSNumberFormatter使用auto(即堆栈)存储使用RAII(例如shared_ptr)来管理NSNumberFormatter的生命周期在Objective-C中,这些选项似乎都不可行。我在堆栈上试过:NSNumberFormatterfmt;但这不能编译。据我所知,Objecti

iphone - 排除 Google 日历中周期性事件的日期

我在iOS5上使用Objective-C中的GData库与GoogleCalendar交互。我能够创建重复事件,但是我在添加异常(exception)时遇到问题。是否有人可以提供一个完整的、完全有效的代码片段来展示如何使用异常来更改事件的详细信息?此外,如何使用异常(exception)排除日期?文档说从外部日历文件导入事件时会使用EXDATE子句,我可以确认这一点。但是文档还说修改重复事件的唯一方法是通过异常,而不是通过重复本身(不幸的是,尝试使用EXDATE子句重复确实不起作用)。所以问题是:如何使用异常重现EXDATE子句的相同行为?从我在文档中看到的,我只能修改一些细节。例如,

ios - UIViewController - 查看事件生命周期并注册 KVO/通知

我想知道是否有任何方法可以在没有匹配的-viewDidAppear:的情况下调用-viewWillAppear:。-viewWillDisappear和-viewDidDisappear同上。我的问题的根源是在哪里注册和取消注册KVO和/或对象的NSNotifications,更改通知将导致ViewController更新View。例如,我有一个异步处理的模型对象,它的字符串属性可能会改变。我希望ViewController对这些属性进行KVO,并通过换出由所述ViewController管理的标签文本来反射(reflect)任何更改。您在哪里注册和注销通知,为什么?编辑:我遇到的一个

ios - 一个(非原子的,强的)属性的生命周期在 iOS 中是如何工作的?

假设我有一个属性声明为:@property(nonatomic,strong)NSArray*menuArr;OR@property(strong)NSArray*menuArr;并在viewDidLoad中设置此属性。设备将“记住”我存储在阵列中的信息多长时间?该属性在嵌入在navigationViewController中的viewController中声明和设置,而navigationViewController本身是TabBarViewController中的第一个ViewController。换句话说,它是用户看到的第一个View,然后他们可能会离开它并返回。在不讨论原子与非

iPhone 应用程序生命周期

InterfaceBuilder在fooAppDelegate.m中为我生成这个方法:-(void)applicationDidFinishLaunching:(UIApplication*)application{//Overridepointforcustomizationafterapplaunch[windowaddSubview:[navigationControllerview]];[windowmakeKeyAndVisible];}IB还将UIWindow*window;放在fooAppDelegate.h和@synthesizewindow;放在fooAppDeleg

iphone - iPhone 应用程序生命周期中的最后一个函数是什么

在关闭我的应用程序之前,我必须从Web服务中注销用户。我找不到应用程序死前调用的最后一个函数?-(void)LogoutUser{intuserId=[[GlobalDatasharedMySingleton]getUserId];NSString*soapMsg=[NSStringstringWithFormat:@"...",userId];NSURL*url=[NSURLURLWithString:@"http://....asmx"];NSMutableURLRequest*req=[NSMutableURLRequestrequestWithURL:url];NSString

iOS 内存管理,(泄漏,保留周期)

我有一些关于应用程序内存会发生什么的一般性问题。当应用程序进入后台或挂起时,内存会发生什么变化。我问这个是因为我的应用程序有一些内存泄漏,根据我的研究,这是Apple框架中的错误,而不是由于我的编码。泄漏相当小,(约100字节),因此它们不应影响性能。但是,我想知道当用户停止使用该应用程序时,这些泄漏会发生什么情况?它们会消失还是永远留在手机的内存中?此外,还有另一个非常相似的问题,除了保留循环。当用户退出应用程序时,是否会解决保留周期问题,假设在使用过程中导致应用程序崩溃不是什么大问题?所以,简而言之,当用户退出应用程序时,分配和内存是否重置为0,这就是我想问的问题。感谢您的帮助!

ios - objective-c - block 保留周期

我有一个block保留周期问题,假设我有以下3种方法,都在一个类中。-(void)foo1WithBlock:(void(^)(BOOLsuccess))completion//dosomething...completion(YES)}-(void)foo2{//dosomething...}-(void)foo3{[selffoo1WithBlock:^(BOOLsuccess){[selffoo2];}];}foo3会创建一个保留周期吗? 最佳答案 不,没有保留周期。但是,self将被捕获。这意味着,self将被导入到复合语句

ios - 应用程序生命周期内的 iAd 请求为零

我已经使用iAd系统将广告整合到iOS7iPad应用程序中。我已经成功地测试了广告集成-可以看到iAd的测试广告。但自应用程序在AppStore发布以来,我从未见过实时广告-尽管应用状态为“实时广告”,iAd门户始终显示0个请求。我已经实现了插页式广告和横幅广告(横向模式),并在设备和模拟器上进行测试时收到带有“您已连接到iAd”消息的广告。但是,应用程序在AppStore中上线后,我没有在应用程序中看到任何广告。我实现了如下插页式广告://AppDelegate'sapplication:didFinishLaunchingWithOptions:[UIViewControllerp

ios - ARC下使用接收 block 的方法的对象生命周期

现在我有这样的事情:-(void)viewDidLoad{MyObject*myObject=nil;@autoreleasepool{myObject=[[MyObjectalloc]init];[myObjectdoSomethingWithBlock:^{NSLog(@"SomethingHappened");}];}NSLog(@"Endofmethod");}doSomethingWithBlock:具有以下内容:-(void)doSomethingWithBlock:(void(^)())aBlock{[selfperformSelector:@selector(somet